package com.atguigu.lease.web.admin.converter;

import com.atguigu.lease.model.enums.ItemType;
import org.springframework.core.convert.converter.Converter;
import org.springframework.stereotype.Component;

//    todo 单独为一个枚举类写 其他的枚举类没法用 所以需要使用转换工厂

//@Component
public class StringToItemTypeConverter implements Converter<String, ItemType> {

    @Override
    public ItemType convert(String source) {//source 相当于前端传的type 字符串
//        todo 拿到枚举类里的属性 判断是否为空 不为空就遍历
        ItemType[] values = ItemType.values();
        if(values != null && values.length > 0){
            for (ItemType value : values) {
//                todo 遍历得到所有的code 然后判断是否和前端传来的type相等
//                如果相等就返回value
                if (value.getCode().equals(Integer.valueOf(source))) {
                    return value;
                }
            }
        }
//        todo 如果都不相等 就返回null
        return null;
    }
}
